img

轨迹数据在人群行为模式研究,城市规划,城市管理与监督等领域扮演了很重要的角色。应用其他类型的城市数据丰富轨迹数据,能够得到更有意义的分析结果。然而对于轨迹数据的查询和分析存在很多困难。本文针对轨迹数据,设计了一种查询输入的方法,允许用户输入查询序列,并对输入的条件进行直观的展示,从而对数据进行过滤,完成不同的分析目标。

首先,轨迹数据的查询可能是相当复杂的。一方面,一个查询目标可能包含复杂的查询条件和限制,例如我们可能想要查询两个在家里相遇的人共同去往咖啡店,然后又分开的轨迹,如下图的橙色和蓝色线条。另一方面,一个的查询目标可能包含不同的时间段条件,地点条件,顺序条件和限制条件,造成了查询序列的多样化。
img

其次,对于数据分析师来说,他们不仅仅需要理解复杂的数据属性,同时需要了解数据库技术,对数据的存储,查询目标到 SQL 语句的转换,编写和数据的维护都需要有一定的知识基础,这样一来,学习成本是很高的。而且对于转换后的 SQL 语句,由于难以理解语句的具体含义,没有办法进行有效的维护。
img

本文设计了五种查询元素,人节点,事件节点,移动关系,比较关系,和节点的限制。用户通过组合这几种不同的元素能够实现复杂的查询序列。其中每一个人的节点代表一个查询目标,事件节点表示特定的时空位置,移动关系存在于两个事件节点中,表示轨迹的移动,而比较节点描述两个节点之间的关系。
img

例如下图中的查询序列表示蓝色的人从一个地点到达了一个冰淇淋店,然后与粉红色的人在一个地点相遇后一起在 15 点之后到达另一个地点的查询输入。该表示方法清晰地展示了查询的输入,简单易操作,便于理解,并且能够直接的自动转换为 SQL 语句进行数据的过滤。
img

同时本文设计了轨迹的分析界面来达到轨迹分析的目的。下面通过一个案例来说明。

该案例使用了 VAST challenge2014 的第二个小问题,该问题应用的数据有城市中一个公司的成员轨迹数据,城市的 POI 数据等。文章对该公司成员的日常规机进行了分析,首先分析了上班族的日常行为,定义查询目标为一日三餐和去公司上班(如下图)。时间轴上,每一条表示一个人的轨迹,而颜色表示一个功能的区域,例如蓝色表示住宅,红色表示公司,青色表示餐厅。通过时间轴的分析,大多数的成员符合了这个查询条件。
img
img

然后分析不符合的人的轨迹,他们有的下午去购物了(第一条轨迹黄色部分),有的中午没有休息(第 234 条轨迹),有的中午回家或者没有按时上班(后面几条轨迹)。
img

然后作者又分析了该公司 CEO 的行为,查询条件定义为没有在该公司的聚会行为。发现了该 CEO 与其他几人在高尔夫球场(绿色)和餐厅(青色)的私下交流行为。
img

本文为了验证方法的有效性,又进行了用户实验,用户实验的问题主要针对查询输入框图的理解和给定查询目标,绘制查询框图两个方面。最终得出该查询定义方法简单直观,便于学习和理解,同时可以应用于例如网站访问分析,时间规划等其他领域。同时,该方法也有一些可以改进的地方,例如相同地点的暗示不够明确,同一个地点可能通过不同的事件节点表示,给用户的分析带来困惑。查询的时间暗示也并不是很明确,没有规定特定的时间,只能指定时间顺序条件。

总的来说,本文的查询方法能直观的,低成本的输入并展示复杂的查询条件序列,完成数据的分析。文章行文流畅,重点突出,解决的问题明确,用户调研也很好的切合了题目,给查询的输入拓展了研究思路。

Haag F, Krüger R, Ertl T. VESPa: A Pattern-based Visual Query Language for Event Sequences[C]// International Conference on Information Visualization Theory and Applications. 2016:48-59.



Questions & Discussion: ✉️ zhaosong_huang@zju.edu.cn